//
//  UIImage+EJUExtend.h
//  ECM
//
//  Created by 孙文强 on 16/9/17.
//  Copyright © 2016年 Happy Day. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <Accelerate/Accelerate.h>

#define MWIMAGECOMPRESS_KB  1024

@interface UIImage (EJUExtend)

- (UIImage *)resizableImage;
+ (UIImage *)createImageWithColor:(UIColor*)color;

/**
 *  压缩图片
 *
 *  @param compressionQuality 压缩率(0~1) 0-最高,质量低;1-基本不压缩
 *
 *  @return 压缩后的图片数据
 */
-(NSData *)dataWithCompressQuality:(CGFloat)compressionQuality;

/**
 *  压缩图片到指定length, 单位: Byte
 *  eg: 压缩图片到 100 KB
 *  [imgObj dataWithCompressLength:100*MWIMAGECOMPRESS_KB]
 *
 *  @param length 指定大小
 *
 *  @return 压缩后的图片数据
 */
-(NSData *)dataWithCompressLength:(CGFloat)length;

/**
 *  等比压缩图片到指定的height
 *
 *  @param height 指定的height
 *
 *  @return 压缩后的图片
 */
- (UIImage *)imageScaledToHeight:(CGFloat)height;

/**
 *  等比压缩图片到指定的width
 *
 *  @param width 指定的width
 *
 *  @return 压缩后的图片
 */
- (UIImage *)imageScaledToWidth:(CGFloat)width;

/**
 *  居中裁剪图片
 *
 *  @param size size
 *
 *  @return 裁剪后的图片
 */
- (UIImage *)cutImageFromCenter:(CGSize)size;

/**
 *  <#Description#>
 *
 *  @param color <#color description#>
 *
 *  @return <#return value description#>
 */
+ (UIImage *)imageWithColor:(UIColor *)color;

/**
 *  不要边框，只把图片变成圆形
 *
 *  @param image <#image description#>
 *  @param inset <#inset description#>
 *
 *  @return <#return value description#>
 */
+ (UIImage *)ellipseImage:(UIImage *)image withInset:(CGFloat)inset;

/**
 *  图片变成圆形，加个有颜色的边框。
 *
 *  @param image <#image description#>
 *  @param inset <#inset description#>
 *  @param width <#width description#>
 *  @param color <#color description#>
 *
 *  @return <#return value description#>
 */
+ (UIImage *)ellipseImage:(UIImage *)image withInset:(CGFloat)inset withBorderWidth:(CGFloat)width withBorderColor:(UIColor*)color;

/**
 *  图片模糊
 *
 *  @param radius     <#radius description#>
 *  @param iterations <#iterations description#>
 *  @param tintColor  <#tintColor description#>
 *
 *  @return <#return value description#>
 */
- (UIImage *)blurredImageWithRadius:(CGFloat)radius iterations:(NSUInteger)iterations tintColor:(UIColor *)tintColor;

//根据URL获取 图片大小
//+(CGSize)getPNGImageSizeWithRequest:(NSMutableURLRequest*)request;

@end
